| Le point de départ est le programme source.
    Ce programme source contient des informations qui ne sont pas nécessaires à
    l'exécution d'un programme comme par exemple les commentaires. Il contient
    des directives de compilation qu'il s'agit d'interpréter. Il faut donc
    mettre ne forme ce programme avant toute opération. C'est le rôle de
    préprocesseur. Ensuite, le programmeur utilise des
    structures de programmation qui ne sont pas forcement optimum. Les
    compilateurs mettent à disposition des optimiseurs qui permettent de rendre
    l'exécution d'un code plus rapide ou de diminuer la taille de la mémoire
    nécessaire à son exécution. C'est le rôle de l'optimiseur. Le fichier optimisé est ensuite compilé
    réellement. Cette phase permet de traduire le fichier source issu de
    l'optimisation en un fichier objet en assembleur.  Ce code en assembleur est ensuite assemblé
    pour produire un fichier objet relogeable. Il s'agit d'un fichier qui est
    codé en code exécutable par le microprocesseur mais dont les adresses de
    début ou de saut n'ont pas été fixées. La dernière étape concerne l'édition des
    liens. Elle consiste à transformer le fichier objet relogeable en un
    exécutable en y ajoutant éventuellement des bibliothèques comme des
    bibliothèques d'entrée sortie ou mathématique et en fixant les adresses de
    branchement. |